# 执行以下操作：
# 1. 运行 pytest 测试，并收集代码覆盖率数据（仅针对 `app` 目录下的代码）。
# 2. 生成覆盖率报告，显示未覆盖的代码行。
# 3. 生成 HTML 格式的覆盖率报告，标题默认为 "coverage" 或通过命令行参数指定。
#
# 使用说明：
# - 此脚本需要在 Bash 环境下运行。
# - 可以通过命令行参数自定义 HTML 报告的标题（例如：`./script.sh "My Coverage Report"`）。
#
# 注意事项：
# - `set -e`：如果任何命令失败，脚本将立即退出。
# - `set -x`：打印执行的命令，便于调试。
#!/usr/bin/env bash

set -e
set -x

coverage run --source=app -m pytest
coverage report --show-missing
coverage html --title "${@-coverage}"
